home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 5 / BBS in a Box -Volume V (BBS in a Box) (April 1992).iso / Files / Prog / M / LSC213.cpt / SoundDvr.h < prev    next >
Encoding:
C/C++ Source or Header  |  1987-09-26  |  1.2 KB  |  73 lines  |  [TEXT/KAHL]

  1.  
  2. /*
  3.  *  SoundDvr.h
  4.  *
  5.  *  Copyright (c) 1986, 1987 THINK Technologies, Inc.
  6.  *  These interfaces are based on information copyrighted
  7.  *  by Apple Computer, Inc., 1985, 1986, 1987.
  8.  *
  9.  */
  10.  
  11. #ifndef    _SoundDvr_
  12. #define _SoundDvr_
  13.  
  14. /* synthesizer modes */
  15. enum { swMode = -1, ffMode, ftMode };
  16.  
  17. typedef    char    FreeWave[1]    ;    /* array[0..30000] of byte; */
  18.  
  19. typedef    struct    FFSynthRec
  20.     {
  21.     int            mode;
  22.     long        count;
  23.     FreeWave    waveBytes;
  24.     } FFSynthRec, *FFSynthPtr ;
  25.  
  26.  
  27. typedef    struct    
  28.     {
  29.     int            count;
  30.     int            amplitude;
  31.     int            duration;
  32.     } Tone ;
  33.     
  34. typedef Tone Tones[1];    /* array[0..5000] of Tone */
  35.  
  36. typedef    struct    
  37.     {
  38.     int            mode;
  39.     Tones        triplets;
  40.     } SWSynthRec, *SWSynthPtr ;
  41.  
  42. typedef char    Wave[256];
  43. typedef    Wave *    WavePtr;
  44.  
  45. typedef    struct    
  46.     {
  47.     int            duration;
  48.     long        sound1Rate;
  49.     long        sound1Phase;
  50.     long        sound2Rate;
  51.     long        sound2Phase;
  52.     long        sound3Rate;
  53.     long        sound3Phase;
  54.     long        sound4Rate;
  55.     long        sound4Phase;
  56.     WavePtr        sound1Wave;
  57.     WavePtr        sound2Wave;
  58.     WavePtr        sound3Wave;
  59.     WavePtr        sound4Wave;
  60.     } FTSoundRec, *FTSndRecPtr ;
  61.  
  62. typedef    struct    
  63.     {
  64.     int            mode;
  65.     FTSndRecPtr    sndRec;
  66.     } FTSynthRec, * FTSynthPtr;
  67.  
  68.  
  69. /*  low-memory globals  */
  70. extern char SdVolume : 0x260;
  71.  
  72.  
  73. #endif _SoundDvr_